/**
 * Copyright 2025 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

@import url("https://fonts.googleapis.com/icon?family=Material+Icons|Material+Icons+Outlined");

.chat-container {
  display: flex;
  background-color: #fff;
  flex-direction: column;
  font-family: "Google Sans", sans-serif !important;
  padding: 2%;
  height: calc(100% - 11%);


  .chat-header {
    min-height: 64.5px;
    background-color: #eeeeee;
    box-shadow: 2px 0px 4px #ccc;
    display: flex;
    justify-content: space-between;
    align-items: center;

    .avatarSection {
      display: flex;

      .picture {
        min-width: 40px;
        max-width: 40px;
        margin: 0 10px;

        img {
          max-width: 100%;
        }
      }

      .nameSection {
        flex-grow: 1;
        color: #48b975;
        display: flex;
        align-items: center;
        font-size: 1.2rem;
        font-weight: 500;
      }
    }
  }

  .chat-body {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    flex-direction: column-reverse;
    padding: 20px 5px;
    padding-bottom: 2%;
    overflow-y: auto;
    padding-right: 2%;
    width: 100%;
    scrollbar-width: none;

    .user-message {
      display: flex;
      align-items: center;
      color: #767676;
      flex-direction: row;
      // justify-content: flex-end;
      word-break: break-word;
      margin-bottom: 10px;
      margin-top: 10px;
      width: 100%;

      .user-message-wrapping-container {
        background: #FFFFFF;
        border: 1px solid #E4EDFD;
        box-shadow: 0px 4px 15px 0px rgba(195, 209, 226, 0.25);
        border-radius: 20px 20px 0px 20px;
        width: 100%;
        display: flex;
        justify-content: space-between;
        padding: 0.5% 1%;
        align-items: center;
        color: #161A1D;

        .messageContent {
          font-size: 0.95rem;
          font-family: "Google Sans", sans-serif !important;
          padding-left: 1%;
          max-width: 96%;

        }
      }
    }

    .user-message:first-child {
      margin-top: 25px;
    }

    .bot-message {
      margin-top: 10px;
      align-items: center;
      color: #767676;
      flex-direction: row;
      margin-bottom: 10px;
      width: 100%;

      .bot-message-wrapping-container {
        border: 0.5px solid #dfe0e2;
        display: flex;
        border: 1px solid #E4EDFD;
        // box-shadow: 0px 4px 16px rgba(140, 140, 156, 0.25);
        border-radius: 20px 0px 20px 0px;
        padding: 0.0% 1%;
        background-color: #F6F9FE;
        color: #161A1D;

        .bot-message-content {
          margin-left: 20px;
          line-height: 2rem;
          font-size: 0.95rem;
          text-wrap: wrap;
          width: 95%;
          word-break: break-word;
          max-width: 100%;
          margin-top: 12px;
        }

        .bot-message-action {
          display: flex;
          flex-direction: column;
          height: 100%;
          align-self: flex-start;
          padding-top: 1em;
          padding-bottom: 1em;
          align-items: center;


          div {
            height: 3.5em;
            width: 3.5em;
            background-size: 443px;
            background-repeat: round;
            border-radius: 28px;
          }
        }
      }

      .action-content {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;

        .action-message {
          font-size: 0.95rem;
        }
      }
    }

  }

  .chat-footer-outer {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;

    .chat-footer {
      min-height: 60px;
      display: flex;
      border: 1px solid #D8D8D8;
      background: #F0F4F9;

      border-radius: 30px;
      width: 100%;
      box-shadow: 0px 4px 18px 0px rgba(195, 209, 226, 0.25);
      padding-inline: 1%;
      // #spacer {
      //   flex-basis: 50px;
      // }

      .chat-textarea {
        flex-grow: 1;
        display: flex;
        align-items: center;
        padding-left: 1%;

        textarea {
          width: 100%;
          height: 45px;
          border: 0px;
          border-radius: 4px;
          resize: none;
          outline: none;
          padding: 14px;
          font-family: 'Google Sans', sans-serif !important;
          box-sizing: border-box;
          -ms-overflow-style: none;
          /* Internet Explorer 10+ */
          scrollbar-width: none;
          /* Firefox */
          font-size: 0.95rem;
          line-height: 1.1rem;
          color: #534646;
          background: #F0F4F9;

          &::placeholder {
            color: #646566;
          }
        }

        textarea::-webkit-scrollbar {
          display: none;
          /* Safari and Chrome */
        }
      }

      .micIcon {
        flex-basis: 75px;
        display: flex;
        align-items: center;
        /* justify-content: center; */
        color: #545454;
        margin-top: 2px;
        padding-right: 1%;

        .send-icon {
          color: #4f5255;
        }

        img {
          max-width: 40%;
          cursor: pointer;
        }
      }
    }

  }


}

.circle {
  width: 40px;
  height: 40px;
  /* border: 5px solid rgb(255, 255, 255); */
  border-radius: 50%;
  overflow: hidden;
  background-color: #fff;
  /* align-items: center; */
  text-align: center;
  display: flex;
  align-items: inherit;
  justify-content: center;
}

.circle img {
  width: 75%;
  height: 73%;
  object-fit: cover;
}

.circle .material-symbols-rounded {
  width: 100%;
  height: 100%;
  object-fit: cover;
  color: #ffffff;
  font-size: 1.9rem;
  margin-top: 12%;
}

.user-circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  background-color: #fff;
  text-align: center;
  display: flex;
  align-items: inherit;
  justify-content: center;
  align-self: flex-end;

  img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

}

/* width */
::-webkit-scrollbar {
  width: 8px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #bec4c4;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555;
  border-radius: 10px;
}

/** Loader Styling Block */
.loader {
  height: 263px;
  background-size: contain;
  background-repeat: repeat;
  text-align: center;
  font-size: 1.2rem;
  border: double 0.01em transparent;
  border-radius: 20px 20px 20px 0px;
  /*added a colourstop here, without the third colourstop you get a hard edge*/
  background: linear-gradient(#fefeff, #fbfbfc),
    linear-gradient(var(--angle),rgba(164, 136, 245, 0.9) 81.43%, rgba(234, 67, 53, 0.9) 135.5%);
  background-origin: border-box;
  background-clip: content-box, border-box;
  animation: 1s rotate linear infinite;
  margin-top: 2%;
  display: flex;
  color: #3E4245;
}

@keyframes rotate {
  to {
    --angle: 360deg;
  }
}

@property --angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

.loader-child-container {
  height: 263px;
  background-size: cover;
  background-repeat: repeat;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 70%;
  line-height: 150%;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}

.left-side-container-1 {
  background-size: 443px;
  background-repeat: no-repeat;
  height: 263px;
  width: 50%;
  border-radius: 28px
}

.left-side-container-2 {
  background-size: 443px;
  background-repeat: no-repeat;
  height: 263px;
  width: 50%;
  border-radius: 28px
}

.left-side-container-3 {
  background-size: 443px;
  background-repeat: no-repeat;
  height: 263px;
  width: 50%;
  border-radius: 28px
}

.left-side-container-error {
  background-image: url('../../../../../assets/images/error_img.svg');
  background-size: 443px;
  background-repeat: no-repeat;
  height: 263px;
  width: 50%;
  border-radius: 28px
}

.right-side-container-1{
  display: flex;
  flex-direction: column;
  padding-right: 3%;
  background: linear-gradient( #f7fffb, #f7fffb),
  linear-gradient(var(--angle), rgb(22, 165, 29), rgb(248, 206, 17), rgb(236, 17, 17), rgb(194, 17, 248), rgb(46, 75, 240));
}

.right-side-container-2{
  display: flex;
  flex-direction: column;
  padding-right: 3%;
  background: linear-gradient(#ffffff, #ffffff),
  linear-gradient(var(--angle), rgb(22, 165, 29), rgb(248, 206, 17), rgb(236, 17, 17), rgb(194, 17, 248), rgb(46, 75, 240));
}

.right-side-container-3{
  display: flex;
  flex-direction: column;
  padding-right: 3%;
  background: linear-gradient(#fdfdfe, #fdfdfe),
  linear-gradient(var(--angle), rgb(22, 165, 29), rgb(248, 206, 17), rgb(236, 17, 17), rgb(194, 17, 248), rgb(46, 75, 240));
}

.right-side-container-error{
  display: flex;
  flex-direction: column;
  padding-right: 3%;
  background: linear-gradient(#fefeff, #fbfbfc),
  linear-gradient(var(--angle), rgb(22, 165, 29), rgb(248, 206, 17), rgb(236, 17, 17), rgb(194, 17, 248), rgb(46, 75, 240));
}

.loader-text-container {
  text-align: center;
  margin-top: auto;
  padding-top: 8%;
}

.answer-not-found {
  background-image: url('../../../../../assets/images/delete_notification_dialog_image.png'), url('../../../../../assets/images/books.png');
  background-size: 66%, 45%;
  background-repeat: no-repeat, no-repeat;
  height: 298px;
  width: 25%;
  border-radius: 28px;
  display: flex;
  flex-direction: row;
  gap: 18px;
  background-position: left, right;
  background-color: none;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
  }
}

.mat-mdc-standard-chip {
  --mdc-chip-label-text-color: #4285F4;
  --mdc-chip-elevated-container-color: #fff;
  border: 2px solid #4285F4 !important;
  font-family: 'Google Sans', sans-serif !important;
  font-size: 18px !important;
  // font-weight: 600;
}

:host ::ng-deep .mdc-evolution-chip__cell {
  justify-content: center;
}

.container {
  display: flex;
  justify-content: center;
}

.generating-text {
  font-family: "Google Sans", sans-serif !important;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  line-height: normal;
  letter-spacing: 0.4px;
  color: #3E4143;
  background: linear-gradient(92.1deg, #bdd1f3 19.16%, rgba(199, 183, 245, 0.9) 79%, rgba(235, 165, 158, 0.9) 135.24%), linear-gradient(272.04deg, rgba(158, 188, 237, 0.7) 14.93%, rgba(158, 188, 237, 0) 104.51%);
  padding: 4px;
  padding-inline: 2%;
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
  // background: linear-gradient(95.31deg, #9EBCED -1.7%, rgba(164, 136, 245, 0.9) 81.43%, rgba(234, 67, 53, 0.9) 135.5%);
}

.chip-container {
  margin-bottom: 0.75rem;
}

.chip-min-size {
  min-width: 12rem;
}

.bot-card-content {
  display: flex;
  flex-direction: row;
  margin-bottom: 25px;
  gap: 15px;
  background: #F6F9FE;
  padding: 2%;
  border-radius: 8px;
  width: fit-content;
  margin-left: 2%;

  mat-card {
    border-radius: 8px;

    img {
      // width: 44%;
      width: 85px;
      height: 96.6px;
      margin-left: auto;
      margin-right: auto;
    }

    mat-card-content {
      padding-top: 9%;
      word-break: break-word;
    }
  }

  a {
    width: 215px;
    pointer-events: visibleFill;
    text-decoration: none;
    line-height: 1.4rem;
  }

  // a:hover {
  //   text-decoration: underline;
  // }

  .info-card {
    height: 100%;
    font-family: 'Google Sans', sans-serif !important;
    font-style: normal;
    font-weight: 300;
    font-size: 14px;
    line-height: 24px;
    /* or 133% */
    text-align: center;
    letter-spacing: 0.4px;

    /* Black */
    color: #161A1D;

    // opacity: 0.75;
    .card-view-button-div {
      padding: 6%;
    }

    .card-view-button {
      background: #4285f436;
      border-radius: 17px;
      width: 87px;
      height: 33.86px;
      justify-content: center;
      color: 4285F4;
      color: #4285F4;
    }

    .footer-info {
      color: var(--Green, #0F9D58);
      text-align: center;
      font-size: 13px;
      font-style: normal;
      padding: 0.5em;
      line-height: 24px;
      /* 150% */
      letter-spacing: 0.4px;
      background: rgba(52, 168, 83, 0.05);

      a:hover {
        text-decoration: none !important;
      }
    }
  }

  .score-card {
    height: 100%;
    font-family: 'Google Sans', sans-serif !important;
    font-style: normal;
    font-weight: 400;
    font-size: 40px;
    line-height: 24px;
    text-align: center;
    letter-spacing: 0.4px;

    .footer-info {
      margin-top: 20px;
      color: #161A1D;
      text-align: center;
      font-size: 14px;
      font-style: normal;
      padding: 0.5em;
      line-height: 24px;
      letter-spacing: 0.4px;
      background: #F8F9FC;
      border-bottom-left-radius: 8px;
      border-bottom-right-radius: 8px;
      a:hover {
        text-decoration: none !important;
      }
    }

    .header-info {
      color: #f1f1f1;
      text-align: center;
      font-size: 16px;
      font-style: normal;
      padding: 0.5em;
      line-height: 24px;
      letter-spacing: 0.4px;
      background: #4285f4f2;
      border-top-left-radius: 8px;
      border-top-right-radius: 8px;
      display: flex;
      justify-content: center;
      a:hover {
        text-decoration: none !important;
      }
    }
  }
}

.ticket-label {
  display: block;
  color: #85898B;
  font-size: 13px;
}

.ticket-data {
  display: block;
  font-size: 13px;
  line-height: 1rem;
}

.ticket-data-subject {
  color: #3E4245;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  text-align: center;
  margin: 0.5em;
}

.ticket-data-id {
  text-align: center;

  mat-icon {
    color: #4285F4;
    font-size: 20px;
  }

  span {
    line-height: 1.6rem;
  }

  .contact-name {
    color: rgba(22, 26, 29, 1);
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.4px;
    opacity: 0.75;
  }

  .material-symbols-rounded {
    color: #5F6368;
    font-size: 5.6em;
    width: 90px;
    height: 90px;
    font-variation-settings:
      'FILL' 1,
      'wght' 400,
      'GRAD' 0,
      'opsz' 24
  }
}

.ticket-card {
  max-width: 220px;
  width: 220px;
  word-break: break-word;
}

.ticket-panel {
  margin: 1em;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: none;

  .panel-header,
  .mat-expansion-panel-content {
    background: #ffffff !important;

    :hover,
    :active {
      background: #ffffff;
    }
  }

  .panel-logo {
    margin-top: 3px;
  }

  mat-icon {
    color: #4285F4;
    font-size: 20px;
  }

  .panel-content {
    padding: 1em;
    display: block
  }

  .ticket-id {
    color: #161A1D;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
  }

  .tic-label {
    color: #A8A8B5;
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
  }

  .ticket-subject {
    color: #3E4245;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
  }
}

.h2-mat {
  margin-bottom: 10px;
  margin-top: 5px;
  font-weight: 700;
}

.challenge-card {
  color: #4285F4;
}

.share-button {
  color: #5F6368;
  font-size: 15px;
  line-height: 25px;
  margin-right: 10px;
}

::ng-deep .share-menu {
  min-height: 30px !important;
  padding: 0.5em 1em;
}

::ng-deep .share-card {
  border-radius: 6px !important;
  box-shadow: 0px 4px 16px 0px rgba(140, 140, 156, 0.25) !important;

  >.mat-mdc-menu-content {
    padding: 0px !important;
  }
}

.share-text {
  color: #3E4245;
  font-family: 'Google Sans', sans-serif !important;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.4px;
}

.dep-accordion {
  display: block;
  width: 100%;
}

.dep-accordion-item {
  display: block;
  border: solid 1px #ccc;
  background-color: #fff;
}

.dep-accordion-item+.dep-accordion-item {
  border-top: none;
  background-color: #fff;
}

.dep-accordion-item-header {
  display: flex;
  align-content: center;
  justify-content: space-between;
}

.dep-accordion-item-description {
  font-size: 0.85em;
  color: #999;
  background-color: #fff;
}

.dep-accordion-item-header {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 16px;
  padding-right: 16px;
}

.dep-accordion-item-body {
  padding-bottom: 5px;
  padding-left: 16px;
  padding-right: 16px;
}

.dep-accordion-item-header:hover {
  cursor: pointer;
}

.dep-accordion-item {
  border-radius: 4px;
  margin-bottom: 2%;
  border-left: 5px solid;
}

.dri-heading {
  font-size: 16px;
  display: block;
  white-space: pre-line;
}

ul {
  margin-top: -5px;
}


a.chat-help-link {
  display: inline-flex;
  padding: 3px 25px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 17px;
  background: #E4EDFD;
  color: #4285F4;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  /* 175% */
  letter-spacing: 0.4px;

  &:hover,
  &:active {
    background: #E4EDFD;
    color: #4285F4;
  }

  --mat-mdc-button-persistent-ripple-color: #E4EDFD;

  .mat-icon {
    color: #4285F4;
    font-size: 20px;
    line-height: 18px;
  }
}

.static-text {
  margin-bottom: 10px;
}

.dep-offerin-detail-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-left: 0% !important;
}

.dep-offering-highlight-accordion {
  margin-left: 2%;
}



.graph-container {
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.35);
  padding: 0em 1em 1em 1em;

  & div:first-child {
    display: block;
  }

  & div:nth-child(1) {
    margin-right: 1.5em;
  }

  & div:nth-child(n+1) {
    display: inline-flex;
    padding: 3px 2px;
    margin-top: 0.5em;
    justify-content: center;
    align-items: center;
    gap: 10px;
  }

  .graph-title {
    color: #161A1D;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.4px;
  }
}

.badge-container {
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.35);
  padding: 1em 1em .25em 1em;

  & div:first-child {
    display: block;
  }

  .ticket-heading {
    color: #161A1D;
    font-family: 'Google Sans', sans-serif !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.4px;
    display: flex;
    align-items: center;
  }

  .ticket-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    color: rgba(66, 133, 244, 1);
  }
}

.initial {
  color: #5F6368;
}

.material-symbols-rounded.like {
  font-variation-settings:
    'FILL' 1,
    'wght' 400,
    'GRAD' 0,
    'opsz' 24
}

.icon-color {
  color: rgb(171 160 243);
}

.bot-suggestion-container {
  justify-content: center;
  display: flex;
  flex-direction: row;
  margin-bottom: -0.5%;
  width: 100%;

  .bot-suggestion-container-child {
    width: 100%;
    background: linear-gradient(92.1deg, #bdd1f3 19.16%, rgba(199, 183, 245, 0.9) 79%, rgba(235, 165, 158, 0.9) 135.24%), linear-gradient(272.04deg, rgba(158, 188, 237, 0.7) 14.93%, rgba(158, 188, 237, 0) 104.51%) !important;
    padding-inline: 2%;
    padding-inline-end: 1%;
    padding-bottom: 0.7%;
    border-radius: 22px;
    padding-top: 1%;
  }
}

.enabled-button {
  color: #4285F4 !important;
  border: none !important;
}

.delete-button {
  color: #ed143d !important;
}

::ng-deep .mat-mdc-snack-bar-container {
  &.green-snackbar {
    --mdc-snackbar-container-color: #0F9D58;
    --mat-mdc-snack-bar-button-color: #fff;
    --mdc-snackbar-supporting-text-color: #fff;
  }
  &.red-snackbar {
    --mdc-snackbar-container-color: #e9103f;
    --mat-mdc-snack-bar-button-color: #fff;
    --mdc-snackbar-supporting-text-color: #fff;
  }
}

.blue-dot {
  /* Ellipse 1226 */
  content: '';
  width: 8px;
  height: 8px;
  left: 1503px;
  top: 445px;
  display: flow-root;
  border-radius: 15px;

  /* Blue */
  background: #4285F4;
  animation: blue-transform 2s infinite ;

}

.green-dot {
  content: '';
  width: 8px;
  height: 8px;
  left: 1522px;
  top: 445px;
  display: flow-root;
  border-radius: 15px;

  /* Green */
  background: #0F9D58;
  animation: green-transform 2s infinite ;
}

.yellow-dot {
  content: '';
  width: 8px;
  height: 8px;
  left: 1541px;
  top: 445px;
  display: flow-root;
  border-radius: 15px;

  /* Yellow */
  background: #F4B400;
  animation: yellow-transform 2s infinite ;

}

.recording-container {
  display: flex;
  flex-direction: row;
  gap: 10px;
  cursor: pointer;
  align-items: baseline;
}


@keyframes blue-transform {
  0%   {transform: translateY(-14px)}
  33%  {transform: translateY(0)}
  66%  {transform: translateY(0)}
  100% {transform: translateY(-14px)  }

}

@keyframes green-transform {
  0%   {transform: translateY(0)}
  33%  {transform: translateY(-14px)}
  66%  {transform: translateY(0)}
  100% {transform: translateY(0)  }

}

@keyframes yellow-transform {
  0%   {transform: translateY(0)}
  33%  {transform: translateY(0)}
  66%  {transform: translateY(-14px)}
  100% {transform: translateY(0)  }

}

.bypassMenuContainer {
  display: flex;
  justify-content: center;
  background: aliceblue;
  width: 42% !important;
  height: 40% !important;
  border-radius: 65px !important;
}

.container-circle {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50px;
  padding-top: 4%;
  padding-bottom: 4%;
}

.user-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    background-color: aliceblue;
    color: cornflowerblue;
    text-align: center;
    display: flex;
    align-items: inherit;
    justify-content: center;
    align-self: flex-end;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
}
